/*
* This file is a part of the open-eBackup project.
* This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
* If a copy of the MPL was not distributed with this file, You can obtain one at
* http://mozilla.org/MPL/2.0/.
*
* Copyright (c) [2024] Huawei Technologies Co.,Ltd.
*
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
*/
#include "servicecenter/thriftservice/detail/ThreadFactoryProxy.h"
#include "servicecenter/thriftservice/detail/ThreadProxy.h"

using namespace apache::thrift::concurrency;
namespace thriftservice {
namespace detail {
std::shared_ptr<Thread> ThreadFactoryProxy::newThread(std::shared_ptr<Runnable> runnable) const
{
    std::shared_ptr<ThreadProxy> result = std::make_shared<ThreadProxy>(isDetached(), runnable);
    runnable->thread(result);
    return result;
}
}
}

